package com.example.vm.service;

import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.service.IService;
import com.common.domain.BasePage;
import com.example.vm.domain.entity.Video;
import com.example.vm.domain.vo.HotVideo;
import com.example.vm.domain.vo.VideoVO;

import java.util.Collection;
import java.util.List;
import java.util.Set;

public interface VideoService extends IService<Video> {
    IPage<Video> listVideo(BasePage basePage);

    List<Video> selectNDaysVideo(long id, int days, int limit);

    Collection<HotVideo> getHotRank();

    Collection<Video> getHotVideo();

    Collection<Video> getTypeVideo(Long typeId);

    void publishVideo(Video video);

    List<Video> getByInterest();

    Long getlikeNum(Long id);

    Collection<Video> getAttentionVideo();

    Collection<Video> getSimilarVideo(Long id);
    
    List<Video> getUserVideo(Long id);
}
